package cn.mapway.tools.db;

import lombok.Data;

import java.util.List;

/**
 * ConfigImpl
 *
 * @author zhangjianshe@gmail.com
 */

@Data
public class ConfigImpl implements IConfigure {

    List<String> includes;
    List<String> excludes;
    String driver;
    String jdbcUrl;
    String schema;
    String user;
    String password;
    String entityPackage;
    String daoPackage;
    String scriptPath;
    String daoPath;
    String entityPath;
    String mapper;
    String useFieldStyle;
    Boolean useGwt;
    String author;
    String dateFormat;
    Boolean lombok;
    Boolean withStaticField;
    Boolean withSwagger;
    Boolean overrideDao;
    String dbSourceName;
    String mapperPath;
    String dbContext;
    String geoObjectClass;
    Boolean onlySchemaScript;

    @Override
    public String geoObjectClass() {
        return geoObjectClass;
    }

    @Override
    public List<String> includes() {
        return includes;
    }

    @Override
    public List<String> excludes() {
        return excludes;
    }

    @Override
    public String getDriver() {
        return driver;
    }

    @Override
    public String getJdbcUrl() {
        return jdbcUrl;
    }

    @Override
    public String getSchema() {
        return schema;
    }

    @Override
    public String getUser() {
        return user;
    }

    @Override
    public String getPassword() {
        return password;
    }

    @Override
    public String entityPackage() {
        return entityPackage;
    }

    @Override
    public String daoPackage() {
        return daoPackage;
    }

    @Override
    public String scriptPath() {
        return scriptPath;
    }

    @Override
    public String daoPath() {
        return daoPath;
    }

    @Override
    public String entityPath() {
        return entityPath;
    }

    @Override
    public String getMapper() {
        return mapper;
    }

    @Override
    public String getUseFieldStyle() {
        return useFieldStyle;
    }

    @Override
    public Boolean getUseGwt() {
        return useGwt;
    }

    @Override
    public String getUseDocument() {
        return "";
    }

    @Override
    public String getUseNutz() {
        return "";
    }

    @Override
    public String getUseFieldIndex() {
        return "";
    }

    @Override
    public String author() {
        return author;
    }

    @Override
    public String dateFormat() {
        return dateFormat;
    }

    @Override
    public Boolean lombok() {
        return lombok;
    }

    @Override
    public Boolean withStaticField() {
        return withStaticField;
    }

    @Override
    public Boolean withSwagger() {
        return withSwagger;
    }

    @Override
    public Boolean overrideDao() {
        return overrideDao;
    }

    @Override
    public String dbSourceName() {
        return dbSourceName;
    }

    @Override
    public String mapperPath() {
        return mapperPath;
    }

    @Override
    public String dbContext() {
        return dbContext;
    }

    @Override
    public Boolean withApiDoc() {
        return false;
    }

    @Override
    public Boolean onlySchemaScript() {
        return onlySchemaScript;
    }

    @Override
    public String beforeScript() {
        return null;
    }

    @Override
    public String afterScript() {
        return null;
    }
}
